﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Policy;
using System.Text;
using System.Threading.Tasks;

namespace 用户管理系统.page {
    //全局属性
    internal static class Global {
        static readonly Dictionary<string, User> users = [];

        static Global() {
            AddUser("001", "张三", Gender.男, [Industry.教育]);
            AddUser("002", "张强", Gender.男, [Industry.企业]);
            AddUser("003", "张小美", Gender.男, [Industry.政府]);
            AddUser("004", "李丽", Gender.女, [Industry.其他]);
            AddUser("005", "陈大牛", Gender.男, [Industry.其他]);
            AddUser("006", "王先华", Gender.男, [Industry.其他]);
            AddUser("007", "张临", Gender.男, [Industry.其他]);
            AddUser("008", "柳萌", Gender.女, [Industry.其他]);
            AddUser("009", "王丽丽", Gender.女, [Industry.其他]);
            AddUser("010", "章蔷", Gender.女, [Industry.企业]);
            AddUser("chen", "陈志源", Gender.男, [Industry.企业,Industry.其他]);
        }
        internal static User[] GetUsers() => [.. users.Select(i => i.Value)];
        internal static User AddUser(string no, string name, Gender gender, Industry[] industrys) {
            var result = new User() {
                No = no,
                Name = name,
                Gender = gender,
                Industrys = industrys
            };
            users.Add(no, result);
            return result;
        }

        internal static User? GetUser(string no) => users[no];

        internal static bool Contain(string no) => users.ContainsKey(no);

        internal static void Delete(string no) => users.Remove(no);

        public static User? LoginUser { get; set; }


    }
}
